package cn.tedu.evaluation.management.dao.persist.repository;

import cn.tedu.common.pojo.vo.PageData;
import cn.tedu.evaluation.management.dao.persist.mapper.CommentMapper;
import cn.tedu.evaluation.management.pojo.entity.Comment;
import cn.tedu.evaluation.management.pojo.vo.CommentVO;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 处理评论数据的存储库接口
 *
 * @author java@傲绝
 * @version 3.0
 */
public interface ICommentRepository  {

    /**
     * 插入评论数据
     *
     * @param comment 评论数据
     * @return 受影响的行数
     */
    int insert(Comment comment);

    /**
     * 根据id删除评论数据
     *
     * @param id 评论ID
     * @return 受影响的行数
     */
    int deleteById(Long id);

    /**
     * 根据id修改评论数据
     *
     * @param comment 封装了评论ID和新数据的对象
     * @return 受影响的行数
     */
    int updateById(Comment comment);

    /**
     * 根据id查询评论数据详情
     *
     * @param id 评论ID
     * @return 匹配的评论数据详情，如果没有匹配的数据，则返回null
     */
    CommentVO getStandardById(Long id);

    /**
     * 查询评论数据列表
     *

     * @return 评论数据列表
     */
    List<CommentVO> listByResourceType();



    /**
     * 查询评论数据列表
     *

     * @return 评论数据列表
     */

    List<CommentVO> listBySelect();


    /**
     * 查询匿名评论数据列表
     *

     * @return 评论匿名数据列表
     */

    List<CommentVO> listAnonymousSelect();

}
